←  Pluginy AMXX

AMXX.pl: Support AMX Mod X i SourceMod

»

Dont say ips

Gość__* 04.04.2008

Dont say ips
Dzięki temu pluginowi nikt bezkarnie nie będzie reklamował IP na twoim serwrze. Po wpisaniu w say: jakiegokolwiek IP w czacie zamiast IP pokazuje się tekst "I must say.... This server ROCKS" (można go zmienić) a osoba która chciała podać IP automatycznie dostaje bana.

Instalacja:
standardowa http://amxx.pl/viewtopic.php?t=20

CVAR'y:
ip_banviolators 0 // 1 - banowanie, 0 - sama podmiana tekstu
ip_banminutes 10 // czas BAN'a w minutach, 0 = perm.

Attached Files

Quote

Gość__* 05.04.2008

A czy na nicki też działa?
Jak ktoś będzie miał w nicku IP to banuje?
Quote

  • +
  • -
ProY's Photo ProY 05.04.2008

a czy jak mam włączony plugin powitanie.amxx to nic sie nie stanie bo on też ip podaje?
Quote

Gość__* 05.04.2008

deLL, tylko w say'u jak napiszesz jakieś IP to banned.
ProX, nie wiem, sprawdż, ale raczej da bana.
Quote

  • +
  • -
ProY's Photo ProY 05.04.2008

to chyba pluga z ip zmienie na tego co ip wszyskich w consoli podaje i dam reklame
Quote

  • +
  • -
hax's Photo hax 07.04.2008

kur3k, banuje na ID :/

przerobi ktoś na IP ? :)
Quote

  • +
  • -
Peter's Photo Peter 19.04.2008

:]

Attached Files

Quote

  • +
  • -
nismo's Photo nismo 29.05.2008

dontsayips banuje na IP ?
Quote

Gość__* 29.05.2008

nismo, ten co ja dałem na STEAM_ID ten co Peter, dał to na IP.
Quote

  • +
  • -
xenu's Photo xenu 27.09.2008

dałoby się przerobić to, żeby nie żarło się z powitanie.amxx?? troche lipa, bo pisze This server rock itp;/
Quote

  • +
  • -
zer0.'s Photo zer0. 27.09.2008

żeby nie żarło się z powitanie.amxx?

w czacie zamiast IP pokazuje się tekst "I must say.... This server ROCKS" (można go zmienić)



[ Dodano: 27-09-2008, 13:51 ]
kawalek .sma
			}
			else {
				client_cmd(id, "say ^"I must say.... This server ROCKS!^"")
			}
			regex_free(g_result)
			return PLUGIN_HANDLED // block msg
		}
	}

troche lipa, bo pisze This server rock itp;/

zmien wg wlasnego uznania.
Quote

Gość__* 27.09.2008

#define PLUGINNAME	"Don't say IPs"
#define VERSION		"0.1"
#define AUTHOR		"JGHG"
/*
Copyleft 2005
Plugin topic: http://www.amxmodx.org/forums/viewtopic.php?p=90172


Don't say IPs
=============
Messages like "hey join my server 213.34.231.23" are automatically blocked... and another message is printed instead. :-P
Or, you can choose to just ban violators by setting cvar ip_banviolators to 1 and ip_banminutes to how many minutes the violator should be banned. 0 is permanent, 5 is default.

/JGHG


VERSIONS
========
050204	0.1	First version


CREDITS
=======
Requested by lord_inuyasha88.
*/

#include <amxmodx>
#include <regex>

#define PATTERN				"(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?).(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)" // b
#define REASON				"IP advertising"
#define CVAR_BANMINUTES		"ip_banminutes"
#define CVAR_BANVIOLATORS	"ip_banviolators"

// Globals below
new Regex:g_result
new g_returnvalue
new g_error[64]
new g_allArgs[1024]
// Globals above

public plugin_modules() {
	require_module("regex")
}

public hook_say(id, level, cid) {
	read_args(g_allArgs, 1023)
	g_result = regex_match(g_allArgs, PATTERN, g_returnvalue, g_error, 63)
	switch (g_result) {
		case REGEX_MATCH_FAIL: {
			log_amx("REGEX_MATCH_FAIL! %s", g_error)
			return PLUGIN_CONTINUE
		}
		case REGEX_PATTERN_FAIL: {
			log_amx("REGEX_PATTERN_FAIL! %s", g_error)
			return PLUGIN_CONTINUE
		}
		case REGEX_NO_MATCH: {
			return PLUGIN_CONTINUE
		}
		default: {
			if (get_cvar_num(CVAR_BANVIOLATORS)) {
				new userid = get_user_userid(id)
				new minutesString[10]
				get_cvar_string(CVAR_BANMINUTES, minutesString, 9)
				new temp[64], banned[16], minutes = get_cvar_num(CVAR_BANMINUTES)
	
				if (minutes)
					format(temp, 63, "%L", id, "FOR_MIN", minutesString)
				else
					format(temp, 63, "%L", id, "PERM")
				
				format(banned, 15, "%L", id, "BANNED")
	
				new authid[32]
				get_user_authid(id, authid, 31)
	
				new name[32]
				get_user_name(id, name, 31)
				log_amx("%s (%s), %s %s because of advertising an IP address. This was written: ^"%s^"", name, authid, banned, temp, g_allArgs)
	
				server_cmd("kick #%d ^"%s (%s %s)^";wait;banid ^"%d^" ^"%s^";wait;writeid", userid, REASON, banned, temp, minutes, authid)				
			}
			else {
				client_cmd(id, "say ^" "")
			}
			regex_free(g_result)
			return PLUGIN_HANDLED // block msg
		}
	}
	
	return PLUGIN_CONTINUE
}



public plugin_init() {
	register_plugin(PLUGINNAME, VERSION, AUTHOR)
	
	register_clcmd("say", "hook_say")
	register_cvar(CVAR_BANVIOLATORS, "0")
	register_cvar(CVAR_BANMINUTES, "30")
	
	register_dictionary("admincmd.txt")
}
Teraz nie będzie napisu "I must say.... This server ROCKS" więc się nie będzie żarło O:)
Quote

  • +
  • -
mgr inż. Pavulon's Photo mgr inż. Pavulon 27.09.2008

A ja muszę stwierdzić że z tym PATTERN'em to za wiele nie robi, wystarczy wstawić jakiś znaczek pomiędzy, lub np zamiast '.' wstawić ',' :/
Ale po przeróbkach i dodaniu obsługi nick'a to naprawdę wiele banów idzie ^^
Quote

  • +
  • -
choyrack's Photo choyrack 27.09.2008

Pavulon, A dodałeś gdzieś tą przerobioną wersje :?: :-)
Quote

  • +
  • -
mgr inż. Pavulon's Photo mgr inż. Pavulon 28.09.2008

Mogę go dać, tylko ostrzegam bo jest agresywny :DD
Działa z Amx Bans, bezpieczni są tylko gracze z [ADMIN_RESERVATION].
Jeżeli ktoś wejdzie z nickiem "zakazanym" lub zmieni na taki to taka zmiana będzie od razu przechwycona i zmieni mu nicka na [TEKST].
Dodatkowo jest zabezpieczenie żeby w amx bans był ban dla gracza z nickiem [TEKST] a nie z "zakazanym" bo to była by reklama. :D

Attached Files

Quote

  • +
  • -
D@N!3L's Photo D@N!3L 15.10.2008

Plugin Prosty a zarazem znakomity , świetnie sie sprawuje na serwie.
Nie trzeba straszyc ludzi banem za reklamowanie innych serwerow :D
Quote

  • +
  • -
Mafioso_PL's Photo Mafioso_PL 18.10.2008

Nie działa na Team_say (można normalnie pisac ip :P )
Quote

  • +
  • -
mgr inż. Pavulon's Photo mgr inż. Pavulon 18.10.2008

looknij tego co ja dałem, lub jeśli tylko tą jedna zmianę chcesz to dodaj:
register_clcmd("say_team", "hook_say")
pod
register_clcmd("say", "hook_say")
Quote

mayerboss's Photo mayerboss 19.10.2008

A jak zrobić wyjątek gdy gracz wpisze ip 80.1.1.1.1:2xxx to go nie zbanuje ?

[ Dodano: 27-10-2008, 15:47 ]
halo ?

[ Dodano: 11-11-2008, 13:05 ]
L 11/11/2008 - 00:08:45: [AMXX] Displaying debug trace (plugin "dontsayips.amxx")
L 11/11/2008 - 00:08:45: [AMXX] Run time error 4: index out of bounds
L 11/11/2008 - 00:08:45: [AMXX] [0] dontsayips.sma::client_connect (line 194)
Quote

  • +
  • -
Batonpl93's Photo Batonpl93 25.11.2008

Sorry za odkop :/ Może ktoś przerobić żeby nie banował za podanie IP tylko kickował?
Quote